package org.apache.flink.runtime.providermanager;

import java.util.concurrent.CompletableFuture;

import org.apache.flink.api.common.ConsumerID;
import org.apache.flink.runtime.allocatedeploy.execution.ExecutionID;
import org.apache.flink.runtime.clusterframework.types.AllocationID;
import org.apache.flink.runtime.resourceprovider.slot.ConsumingSlotPayload;

/**
 * @类名: ConsumeItem
 * @说明: 资源消费凭证
 *
 * @author   leehom
 * @Date	 2024年2月20日 下午2:17:02
 * 修改记录：
 *
 * @see 	 
 */
public class ConsumingItem implements ConsumingSlotPayload {
	
	/** 所属消费者*/
	private final ConsumerID consumerId;
	private final ExecutionID executionId;	
	private final AllocationID allocationId;	

	
	public ConsumingItem(ConsumerID consumerId, ExecutionID executionId, AllocationID allocationId) {
		super();
		this.consumerId = consumerId;
		this.executionId = executionId;
		this.allocationId = allocationId;
	}

	@Override
	public ConsumerID getConsumerID() {
		return consumerId;
	}

	@Override
	public ExecutionID getExecutionId() {
		return executionId;
	}

	@Override
	public AllocationID getAllocationId() {
		return allocationId;
	}
	
}
